<template>
    <view
        v-if="inited"
        :class="'l-transition l-class ' + classes"
        :style="'-webkit-transition-duration:' + currentDuration + 'ms; transition-duration:' + currentDuration + 'ms; ' + (display ? '' : 'display: none;') + ' ' + customStyle"
        @transitionend="onTransitionEnd"
    >
        <slot />
    </view>
</template>

<script>
import lIcon from '../icon/index';
import lMask from '../mask/index';
import transition from '../behaviors/transition';
export default {
    mixins: [transition(true)],
    externalClasses: ['l-class', 'l-enter-class', 'l-enter-active-class', 'l-enter-to-class', 'l-leave-class', 'l-leave-active-class', 'l-leave-to-class'],
    methods: {},
    created: function () {}
};
</script>
<style>
.l-transition {
    transition-timing-function: ease;
}
.l-fade-enter-active,
.l-fade-leave-active {
    transition-property: opacity;
}
.l-fade-enter,
.l-fade-leave-to {
    opacity: 0;
}
.l-fade-down-enter-active,
.l-fade-down-leave-active,
.l-fade-left-enter-active,
.l-fade-left-leave-active,
.l-fade-right-enter-active,
.l-fade-right-leave-active,
.l-fade-up-enter-active,
.l-fade-up-leave-active {
    transition-property: opacity, transform;
}
.l-fade-up-enter,
.l-fade-up-leave-to {
    transform: translate3d(0, 100%, 0);
    opacity: 0;
}
.l-fade-down-enter,
.l-fade-down-leave-to {
    transform: translate3d(0, -100%, 0);
    opacity: 0;
}
.l-fade-left-enter,
.l-fade-left-leave-to {
    transform: translate3d(-100%, 0, 0);
    opacity: 0;
}
.l-fade-right-enter,
.l-fade-right-leave-to {
    transform: translate3d(100%, 0, 0);
    opacity: 0;
}
.l-slide-down-enter-active,
.l-slide-down-leave-active,
.l-slide-left-enter-active,
.l-slide-left-leave-active,
.l-slide-right-enter-active,
.l-slide-right-leave-active,
.l-slide-up-enter-active,
.l-slide-up-leave-active {
    transition-property: transform;
}
.l-slide-up-enter,
.l-slide-up-leave-to {
    transform: translate3d(0, 100%, 0);
}
.l-slide-down-enter,
.l-slide-down-leave-to {
    transform: translate3d(0, -100%, 0);
}
.l-slide-left-enter,
.l-slide-left-leave-to {
    transform: translate3d(-100%, 0, 0);
}
.l-slide-right-enter,
.l-slide-right-leave-to {
    transform: translate3d(100%, 0, 0);
}
</style>
